x86: solve spinlock bug in s3 cpufreq path.
authorKeir Fraser <keir.fraser@citrix.com>
Thu, 5 Feb 2009 12:13:25 +0000 (12:13 +0000)
committerKeir Fraser <keir.fraser@citrix.com>
Thu, 5 Feb 2009 12:13:25 +0000 (12:13 +0000)
Signed-off-by Kevin Tian <kevin.tian@intel.com>

xen/arch/x86/smpboot.c

index f30a32f0d41ff964b8c3a60b6dce0cfe955b8c89..1f96ed6d508ee4250ad3d96d8b90394c055cd4f0 100644 (file)
@@ -1256,8 +1256,6 @@ int __cpu_disable(void)
        mdelay(1);
        local_irq_disable();
 
-       cpufreq_del_cpu(cpu);
-
        time_suspend();
 
        cpu_mcheck_disable();
@@ -1321,6 +1319,8 @@ int cpu_down(unsigned int cpu)
 
        printk("Prepare to bring CPU%d down...\n", cpu);
 
+       cpufreq_del_cpu(cpu);
+
        err = stop_machine_run(take_cpu_down, NULL, cpu);
        if (err < 0)
                goto out;